Matthias Clasen [Sat, 8 Nov 2014 01:38:42 +0000 (20:38 -0500)]
inspector: Improve search in the resource tree
Make search in the resource tree work the same way as the new
search in the object tree.
Matthias Clasen [Sat, 8 Nov 2014 01:10:12 +0000 (20:10 -0500)]
inspector: Correct a tooltip
Jasper St. Pierre [Sat, 8 Nov 2014 01:39:43 +0000 (17:39 -0800)]
gdkwindow-x11: Fix indentation
Jasper St. Pierre [Sat, 8 Nov 2014 00:33:43 +0000 (16:33 -0800)]
inspector: Remove unused variable
Matthias Clasen [Fri, 7 Nov 2014 19:17:41 +0000 (14:17 -0500)]
inspector: Look for themes in the right places
Match the places that GtkCssProvider looks in, so we show all
the themes that GTK+ would actually find.
Carlos Garnacho [Tue, 4 Nov 2014 18:26:25 +0000 (19:26 +0100)]
wayland: Schedule a clock tick instead of wl_surface_commit()ting directly
Instead of possibly calling wl_surface_commit() out of
GdkFrameClock::after-paint, tick the transient parent clock so ::after-paint
can be eventually run.
This ensures that the subsurface coordinates (considered part of the state
of the parent) aren't committed untimely, and guaranteed to be orderly with
the wl_subsurface-relative state.
This is a gtk-side fix for https://bugzilla.gnome.org/show_bug.cgi?id=738887
Carlos Garnacho [Fri, 7 Nov 2014 16:16:59 +0000 (17:16 +0100)]
wayland: Don't translate a NULL region into an empty one
cairo_region_copy(NULL) will effectively return an empty region, as this
function is always meant to return valid memory. This however inverts the
meaning of the NULL region and results in entirely non-clickable windows.
Carlos Garnacho [Fri, 7 Nov 2014 11:55:52 +0000 (12:55 +0100)]
gtkwindow: claim the press sequence when clicking on the titlebar
This event might not have an action yet, but certainly accounts, and
should be triggering recognition.
This fixes a crash when attempting to drag CSD windows through touch. As
since
cfaec2d2f542, gtk_gesture_single_get_current_sequence() would
rightfully return NULL if the gesture didn't enter recognition, making
event lookup fail.
Carlos Garnacho [Thu, 6 Nov 2014 12:07:05 +0000 (13:07 +0100)]
treeview: remove single-click activation from GtkGestureMultiPress::pressed
This is already handled in GtkGestureMultiPress::release, and more in
concordance with how it was done pre-gestures.
https://bugzilla.gnome.org/show_bug.cgi?id=737891
Matthias Clasen [Fri, 7 Nov 2014 12:12:22 +0000 (07:12 -0500)]
Revert "Add new API to docs"
This reverts commit
41e9eaf64fdabf49679db193778b15c44e3d0b52.
Matthias Clasen [Fri, 7 Nov 2014 12:11:38 +0000 (07:11 -0500)]
inspector: include private gdk headers
...the advantages of living in the same tree.
Matthias Clasen [Fri, 7 Nov 2014 12:10:49 +0000 (07:10 -0500)]
Don't make the gl flags API
We need to export the symbols so they can be used in the
inspector, but we don't really want to make this supported
public API, so keep them out of installed headers.
Matthias Clasen [Fri, 7 Nov 2014 04:37:00 +0000 (23:37 -0500)]
Add new API to docs
Matthias Clasen [Fri, 7 Nov 2014 04:29:49 +0000 (23:29 -0500)]
inspector: Add GL flags
Matthias Clasen [Fri, 7 Nov 2014 04:29:16 +0000 (23:29 -0500)]
Export API to set GL flags
This will be used in the inspector.
Lapo Calamandrei [Thu, 6 Nov 2014 22:57:40 +0000 (23:57 +0100)]
Adwaita: scrollbar styling overhaul
- finally added the missing border;
- proper backdrop state styling;
- tweaked overlay indicator;
- sidebar special casing gone for now.
Jasper St. Pierre [Thu, 6 Nov 2014 21:47:59 +0000 (13:47 -0800)]
gdkgl: Make some helper functions static
Ryan Lortie [Thu, 6 Nov 2014 20:28:51 +0000 (15:28 -0500)]
mir: rework cursors a bit
Store the cursor name on the cursor (rather than always using its type).
Use this when setting a cursor on a surface.
The mir server will fallback to using standard cursors from the cursor
theme if the name used is not one of those defined by mir, which is more
or less what we want to happen here in case of creating a cursor by
name.
William Hua [Mon, 3 Nov 2014 21:31:07 +0000 (16:31 -0500)]
mir: enable csd
William Hua [Mon, 3 Nov 2014 16:46:45 +0000 (11:46 -0500)]
mir: set cursor
Matthias Clasen [Thu, 6 Nov 2014 20:17:09 +0000 (15:17 -0500)]
Drop an unneeded include
Matthias Clasen [Thu, 6 Nov 2014 20:01:03 +0000 (15:01 -0500)]
GtkModelButton: protect against show_all
We don't want the labels to be shown when there's already
an icon.
Alexander Larsson [Thu, 6 Nov 2014 19:37:24 +0000 (20:37 +0100)]
GdkWindow: Drop gl matrix setup which is not needed anymore.
Alexander Larsson [Thu, 6 Nov 2014 19:37:10 +0000 (20:37 +0100)]
gdk_gl_texture_from_surface: Enable scissor test
Alexander Larsson [Thu, 6 Nov 2014 18:33:24 +0000 (19:33 +0100)]
gdk_gl_texture_quad: Fix handling of window scales
Lapo Calamandrei [Thu, 6 Nov 2014 16:21:50 +0000 (17:21 +0100)]
Adwaita: remove last child border on backdrop column headers
Lapo Calamandrei [Thu, 6 Nov 2014 11:39:34 +0000 (12:39 +0100)]
Adwaita: initial overlay indicator styling
Alexander Larsson [Thu, 6 Nov 2014 11:21:28 +0000 (12:21 +0100)]
GdkX11GLContext: Use bitblit for swap if no buffer age support
If buffer age is undefined and the updated area is not the whole
window then we use bit-blits instead of swap-buffers to end the
frame.
This allows us to not repaint the entire window unnecessarily if
buffer_age is not supported, like e.g. with DRI2.
Alexander Larsson [Thu, 6 Nov 2014 11:13:08 +0000 (12:13 +0100)]
Add gdk_gl_context_has_framebuffer_blit()
This checks if the context supports GL_EXT_framebuffer_blit
Alexander Larsson [Thu, 6 Nov 2014 10:31:01 +0000 (11:31 +0100)]
GdkGL: Fix up GL_ARB_texture_rectangle support
This broke when gdk_gl_texture_quad moved to shaders. We need
a specialized shader for the rectangle case.
Alexander Larsson [Thu, 6 Nov 2014 10:29:51 +0000 (11:29 +0100)]
Add support for GDK_GL=texture-rectangles
This allows us to test our support for GL_ARB_texture_rectangle
Alexander Larsson [Thu, 6 Nov 2014 09:21:48 +0000 (10:21 +0100)]
Add GDK_GL env var and GdkGLFlags
This moves the GDK_ALWAYS_USE_GL env var to GDK_GL=always.
It also changes GDK_DEBUG=nogl to GDK_GL=disable, as GDK_DEBUG
is really only about debug loggin.
It also adds some completely new flags:
software-draw-gl:
Always use software fallback for drawing gl content to a cairo_t.
This disables the fastpaths that exist for drawing directly to
a window and instead reads back the pixels into a cairo image
surface.
software-draw-surface:
Always use software fallback for drawing cairo surfaces onto a
gl-using window. This disables e.g. texture-from-pixmap on X11.
software-draw:
Enables both the above.
Alexander Larsson [Thu, 6 Nov 2014 08:21:35 +0000 (09:21 +0100)]
gdk_cairo_draw_from_gl: Remove useless call
The glFramebufferTexture2DEXT call makes no sense here, we're
not using the texture as a framebuffer, just as a normal
texture source.
Alexander Larsson [Thu, 6 Nov 2014 08:15:03 +0000 (09:15 +0100)]
GdkWindow: Try to use a Core 3.2 GL profile for the paint context
If this is supported we avoid a lot of legacy baggage which we don't
need.
Alexander Larsson [Thu, 6 Nov 2014 08:13:36 +0000 (09:13 +0100)]
gdk_gl_texture_quad: Use shaders to texture things
This is the modern way OpenGL works, and using it will let us
switch to a core context for the paint context, and work on
OpenGL ES 2.0.
Alexander Larsson [Thu, 6 Nov 2014 08:12:40 +0000 (09:12 +0100)]
GdkGL: Rename "context" to "paint_context" to clarify things a bit
Alexander Larsson [Thu, 6 Nov 2014 08:11:17 +0000 (09:11 +0100)]
gdk_cairo_draw_from_gl: Document that this changes the current context
Alexander Larsson [Thu, 6 Nov 2014 08:10:34 +0000 (09:10 +0100)]
GdkGLContextX11: Use passed in context, not get_current()
Alexander Larsson [Wed, 5 Nov 2014 14:42:06 +0000 (15:42 +0100)]
Add gdk_gl_texture_quad() helper
Right now this just centralizes the glBegin/glEnd code, but
this will be replaced with buffer objects later.
Alexander Larsson [Wed, 5 Nov 2014 14:19:00 +0000 (15:19 +0100)]
gdkgl: Don't constantly re-create the tmp framebuffer
Dimitris Spingos [Thu, 6 Nov 2014 11:49:23 +0000 (13:49 +0200)]
Updated Greek translation
Matthias Clasen [Thu, 6 Nov 2014 06:04:13 +0000 (01:04 -0500)]
GtkHeaderBar: Queue a resize when pack-type is changed
Otherwise, buttons appear to stick to the wrong side in glade.
Robert Ancell [Wed, 5 Nov 2014 22:12:18 +0000 (11:12 +1300)]
mir: Handle pointer up/down events without a button mask set (i.e. touch events)
The Mir backend was checking for button mask changes to generate the appropriate
GDK event. When Mir generates a touch event it has no button mask. In this case
we'll just generate a primary button event.
Lapo Calamandrei [Wed, 5 Nov 2014 15:01:28 +0000 (16:01 +0100)]
Adwaita: dim GtkPlacesSidebar icons color
Benjamin Otte [Wed, 5 Nov 2014 12:05:56 +0000 (13:05 +0100)]
tests: Add deprecation guards
It's the last test still spewing these and I'm too lazy to do a proper
fix.
Matthias Clasen [Wed, 5 Nov 2014 11:29:47 +0000 (06:29 -0500)]
widget-factory: Fill up page 2 properly
The collapsed expander leaves and odd empty corner, so expand
it initially.
Matthias Clasen [Wed, 5 Nov 2014 05:27:13 +0000 (00:27 -0500)]
widget-factory: Add another osd
This is modeled after the totem osd.
Alexander Larsson [Wed, 5 Nov 2014 11:02:18 +0000 (12:02 +0100)]
GdkGLContextX11: Only set swap interval when it changed
Alexander Larsson [Wed, 5 Nov 2014 08:52:51 +0000 (09:52 +0100)]
GdkGL: Fix and clean up gdk_cairo_draw_from_gl()
This was unnecessarily creating a framebuffer in the texture case,
and it was not properly setting up a framebuffer with the texture
as source in the software fallback w/ texture source case.
Robert Ancell [Wed, 5 Nov 2014 02:50:15 +0000 (15:50 +1300)]
mir: Don't assert on unknown Mir events.
If we get a Mir event we don't understand generate a warning instead of an assert.
Matthias Clasen [Tue, 4 Nov 2014 21:56:25 +0000 (16:56 -0500)]
GtkHeaderBar: Make the position child property writable
Glade asssumes that it is, and without this, rearranging children
in glade is very cumbersome.
Carlos Garnacho [Tue, 4 Nov 2014 16:08:49 +0000 (17:08 +0100)]
gtkwindow: Resort to regular event bubbling by all means on non-toplevels
If the multipress gesture is not created (ie. not a toplevel GtkWindow),
also avoid possibly calling gtk_widget_event() on the events gotten here.
Carlos Garnacho [Tue, 4 Nov 2014 16:07:29 +0000 (17:07 +0100)]
gtkwindow: Do not create the multipress gesture for plugs
GtkPlugs may "qualify" as toplevels, even though they're not meant to
be WM manipulated, so refuse to create the multipress gesture for these
too.
Yosef Or Boczko [Tue, 4 Nov 2014 17:23:13 +0000 (19:23 +0200)]
Updated Hebrew properties translation
Yosef Or Boczko [Tue, 4 Nov 2014 17:22:40 +0000 (19:22 +0200)]
Updated Hebrew translation
Lapo Calamandrei [Tue, 4 Nov 2014 13:59:24 +0000 (14:59 +0100)]
Adwaita: brighter dark variant header-bar bottom shade
Matthias Clasen [Tue, 4 Nov 2014 03:35:11 +0000 (22:35 -0500)]
Make window scale changes work again
Commit
afd9709afff151e04b84b91c6d90b7 made us keep impl window
cairo surfaces around across changes of window scale. But the
window scale setter forgot to update the size and scale of the
surface. The effect of this was that toggling the window scale
from 1 to 2 in the inspector was not causing the window to draw
at twice the size, although the X window was made twice as big,
and input was scaled too. Fix this by updating the surface when
the window scale changes.
Matthias Clasen [Tue, 4 Nov 2014 00:01:57 +0000 (19:01 -0500)]
Add some more builder tests
Alexander Larsson [Mon, 3 Nov 2014 12:35:00 +0000 (13:35 +0100)]
GtkGLArea: Correctly position/size input window on realize
Alexander Larsson [Mon, 3 Nov 2014 12:20:55 +0000 (13:20 +0100)]
GdkGLContext: Add display property
We need to use this in the code path where we make the context
non-current during destroy, because at that point the window
could be destroyed and gdk_window_get_display() would return
NULL.
Alexander Larsson [Mon, 3 Nov 2014 12:19:40 +0000 (13:19 +0100)]
GtkGLArea: Don't dispose gl context on unrealize
This was done to ensure the context is not current, but this is
pretty broken for shared contexts. We now just make it non-current.
Alexander Larsson [Mon, 3 Nov 2014 09:43:31 +0000 (10:43 +0100)]
GtkGLArea: Add create-context signal
This lets you hook into the GL context creation which is useful
if you want to share one GL context between GtkGLArea widgets.
Matthias Clasen [Mon, 3 Nov 2014 05:48:42 +0000 (00:48 -0500)]
Only warn once if inhibit-related dbus calls fail
No need to spam about it.
https://bugzilla.gnome.org/show_bug.cgi?id=734140
Matthias Clasen [Mon, 3 Nov 2014 05:25:14 +0000 (00:25 -0500)]
GtkIconTheme: Improve an error message
Mention the name of the theme when an icon lookup fails.
https://bugzilla.gnome.org/show_bug.cgi?id=687963
Matthias Clasen [Mon, 3 Nov 2014 05:02:13 +0000 (00:02 -0500)]
GtkFileChooser: Add a menuitem for 'sort directories first'
This has been requested repeatedly.
Alberts Muktupāvels [Fri, 31 Oct 2014 01:10:13 +0000 (03:10 +0200)]
gtkmenu: fix unnecessary scroll buttons
Don't change menu height if menu is out of monitor only by shadow
width.
https://bugzilla.gnome.org/show_bug.cgi?id=738321
Lapo Calamandrei [Wed, 22 Oct 2014 18:46:54 +0000 (20:46 +0200)]
Adwaita: add borders to menus in a non composited env
https://bugzilla.gnome.org/show_bug.cgi?id=738800
Matthias Clasen [Sun, 2 Nov 2014 22:46:35 +0000 (17:46 -0500)]
GtkHeaderBar: Fix a corner-case in child properties
The child property setting must be prepared to deal with any
child property for any child, even if it doesn't make sense,
like the pack-type for the custom title. This is happening
in glade when undoing a change in the custom-title property.
Dimitris Spingos [Sun, 2 Nov 2014 08:52:52 +0000 (10:52 +0200)]
Updated Greek translation
Matthias Clasen [Sat, 1 Nov 2014 18:49:02 +0000 (14:49 -0400)]
csd: Improve appearance inside glade
glade turns windows into non-toplevels, so we can easily recognize
that situation and avoid adding a humongous shadow area.
Matthias Clasen [Sat, 1 Nov 2014 18:44:03 +0000 (14:44 -0400)]
Fix an ordering issue in event destruction
gdk_event_get_display accesses event->any.window, so don't
free that window first thing.
Matthias Clasen [Sat, 1 Nov 2014 17:18:33 +0000 (13:18 -0400)]
GtkVolumeButton: Fix annoying double formatting
We meant to specify 0.2, and it came out as 0.
2000000001.
Matthias Clasen [Sat, 1 Nov 2014 17:18:17 +0000 (13:18 -0400)]
glade: Add GtkColorEditor to private widgets
Matthias Clasen [Sat, 1 Nov 2014 17:15:20 +0000 (13:15 -0400)]
glade: Drop a no-longer existing private widget
GtkScaleButtonScale fell by the wayside when the scale button
was ported to a popover.
Cosimo Cecchi [Fri, 31 Oct 2014 00:02:45 +0000 (17:02 -0700)]
radiobutton: don't consider hidden buttons in the group for focus
When a GtkRadioButton has no focus, it will accept it when there is no
other active button in its group.
If the active button in the group is hidden, for example because the UI
desires not to have a default option pre-selected, currently the focus
will not be accepted, which is not desired behavior.
This commit changes the code to only consider visible buttons in the
group when checking whether another button is active.
https://bugzilla.gnome.org/show_bug.cgi?id=739474
Matthias Clasen [Sat, 1 Nov 2014 02:34:09 +0000 (22:34 -0400)]
GtkListBox: Fix a bug in unselection
Ensure that gtk_list_box_get_selected_row returns NULL after
gtk_list_box_unselect_all. Add a testcase that detects this
problem.
Matthias Clasen [Sat, 1 Nov 2014 02:28:17 +0000 (22:28 -0400)]
icon-browser: Add search
Most of the code was already in place, just some loose ends
to fix up.
Matthias Clasen [Sat, 1 Nov 2014 01:14:09 +0000 (21:14 -0400)]
inspector: Search refinements
Show close buttons on all search bars.
Matthias Clasen [Sat, 1 Nov 2014 01:13:18 +0000 (21:13 -0400)]
inspector: Refine object tree search
Behave similar to traditional treeview search, and center
the row when moving between matches.
Matthias Clasen [Fri, 31 Oct 2014 18:16:39 +0000 (14:16 -0400)]
inspector: Add search to the object tree
This is also an attempt to figure out a better story for search
in treeviews.
Matthias Clasen [Fri, 31 Oct 2014 18:16:02 +0000 (14:16 -0400)]
Trivial: sort file list alphabetically
Lapo Calamandrei [Fri, 31 Oct 2014 15:53:23 +0000 (16:53 +0100)]
Adwaita: special case .default-decoration
Titlebars which are just window handles can be smaller.
Lapo Calamandrei [Fri, 31 Oct 2014 15:44:21 +0000 (16:44 +0100)]
Adwaita: simpler gtkcalendar style (once again)
Matthias Clasen [Fri, 31 Oct 2014 00:54:54 +0000 (20:54 -0400)]
inspector: Improve search in style property list
Use a search bar with a search entry instead of the builtin
treeview search popup.
Matthias Clasen [Fri, 31 Oct 2014 00:54:04 +0000 (20:54 -0400)]
inspector: Improve search in property list
Use a search bar with a search entry instead of the builtin
treeview search popup.
Matthias Clasen [Thu, 30 Oct 2014 22:47:46 +0000 (18:47 -0400)]
inspector: Stop overeager activation
Stop using activate-on-single click for the property list -
it is a little annoying to have the popover come up when you
just click in the list to get the focus there.
Alexander Larsson [Thu, 30 Oct 2014 19:00:45 +0000 (20:00 +0100)]
GdkGLArea: fix has_alpha changes at runtime
We need to completely reallocate the buffers if we switch
has_alpha, because we may switch from render buffers to
texture.
Alexander Larsson [Thu, 30 Oct 2014 18:49:43 +0000 (19:49 +0100)]
GtkGLArea: Add resize signal
This is very useful, as almost all GL code wants to recalculate
the cameras each time the window size changes.
Alexander Larsson [Thu, 30 Oct 2014 18:18:05 +0000 (19:18 +0100)]
GtkGLArea: Add profile property
This lets you force a core 3.2 context if you want
Alexander Larsson [Thu, 30 Oct 2014 17:51:40 +0000 (18:51 +0100)]
GtkGLArea: Add INPUT_ONLY window so that we can get events
Alexander Larsson [Thu, 30 Oct 2014 17:22:44 +0000 (18:22 +0100)]
GtkGLArea: Major reworking
This restructures the way buffers are allocated and bound in a way
that is more flexible.
Buffer operation happens in three phases:
create_buffer() - Creates the gl objects
allocate_buffers() - Allocates space for the buffers at a given size
attach_buffers() - Attaches the buffers to the framebuffer and makes
the framebuffer the default drawing target
And destroy via
delete_buffers()
We call all these the first draw, and after that we allocate buffers
each time the widget changes size until the buffers are deleted.
We delete the buffers at unrealize.
However, anyone that wants to manually control buffer allocation strategies
can manually call allocate/delete_buffers().
There are also some other changes:
* Support for stencil buffers.
* A manual render mode where ::draw doesn't render unless you manually
invalidated the previous rendering.
Alexander Larsson [Thu, 30 Oct 2014 15:04:28 +0000 (16:04 +0100)]
gdk_x11_display_make_gl_context_current: move some code
This moves the code related to the frame sync code into
the is_attached check, which means we don't have to ever
run this when making non-window-paint contexts current.
This is a minior speed thing, but the main advantage
is that it makes making a non-paint context current
threadsafe.
Lapo Calamandrei [Thu, 30 Oct 2014 17:41:45 +0000 (18:41 +0100)]
Adwaita: darken a bit OSD background color
To not make it vanish on dark variant background color.
Matthias Clasen [Thu, 30 Oct 2014 17:41:13 +0000 (13:41 -0400)]
Improve warning
Mention the file that we're failing to load. That makes it obvious
what is wrong.
Matthias Clasen [Thu, 30 Oct 2014 16:50:09 +0000 (12:50 -0400)]
inspector: Add HighContrast to built-in themes list
Matthias Clasen [Thu, 30 Oct 2014 16:48:56 +0000 (12:48 -0400)]
HighContrast: integrate in build machinery
Matthias Clasen [Thu, 30 Oct 2014 16:47:53 +0000 (12:47 -0400)]
Drop gtk.gresource.xml
Theme resources are controlled from the (generated) .gresource.xml
file two stories up.
Matthias Clasen [Thu, 30 Oct 2014 15:34:32 +0000 (11:34 -0400)]
HighContrast: Add sass parsing script
Just a copy of what we have next door in Adwaita.
Matthias Clasen [Thu, 30 Oct 2014 15:32:23 +0000 (11:32 -0400)]
HighContrast: Drop settings.ini
The only setting in there is already the default behavior,
and the setting is deprecated and ignored anyway.
Lapo Calamandrei [Thu, 30 Oct 2014 12:21:13 +0000 (13:21 +0100)]
Adwaita: slightly contrasting popover background